A number of data recording and/or playback devices, including magnetic disk drives, have rotating components which can lead to a phenomenon generally referred to as runout. In the case of a magnetic disk drive, in an idealized drive configured with nominally concentric data tracks, if a read/write head is kept a constant radial distance from the (nominal) axis of rotation, there will be no change in the distance (if any) from the read/write head to the desired data track, as the disk rotates. In actuality, however, many factors can contribute to deviations from this ideal condition such that small tracking correction forces must be applied to the read/write head to maintain the head sufficiently aligned with a desired data track, as the disk rotates. Although some amount of tracking error (e.g., a few percent, such as around 8 percent, expressed in terms of percentage of track-to-track distance) can be tolerated, most modern disk drives provide apparatuses and procedures for making tracking corrections to assist in maintaining tracking within acceptable ranges.
Typically, deviations of the actual track location from the ideal concentric location (i.e., “runout”) can be considered to include repeatable components (i.e., at least partially predictable and, therefore, correctible) and non-repeatable components. In at least one approach, actual tracking errors are measured, and attempts are made to distinguish repeatable from non-repeatable components, so that steps can be taken to at least partially correct for the repeatable components. Many techniques for determining or approximating repeatable runout (RRO) involve measurements taken over multiple sectors and/or multiple revolutions and, thus, can be somewhat time-consumptive. Accordingly, it is generally desirable to employ procedures which converge on an RRO estimate relatively quickly.
Repeatable runout can also be considered as having both substantially static and dynamic components. Components of repeatable runout which first occur after the servo sector write process (and which, typically, can change their amplitude and/or phase, e.g., with temperature) will be referred to herein as “live” RRO. Static components, which remain (or are assumed to remain) substantially unchanged over time and/or in response to environmental changes, are (in at least some approaches) measured, and appropriate runout corrections are written into some or all servo sectors for each track (termed “embedded runout correction” or ERC). ERC is typically performed as part of a drive manufacturing process, i.e. substantially “off-line,” and the ERC corrections are calculated and written before the drive is provided to the user, and/or before normal read/write operation of the drive is commenced.
One approach to ERC involves convolving position error signal (PES) RRO values with the inverse impulse response of the servo system of the disk drive, e.g. as described in U.S. Pat. No. 6,549,362, incorporated herein by reference. However, even after ERC is applied, there may be an amount of runout which still occurs and which may change over time or in response to environmental changes.
In at least some approaches, active or “adaptive” runout correction is used to at least partially correct for such dynamic runout. One general approach for adaptive repeatable runout correction (ARC) involves performing a processor “interrupt” (in response to encountering each servo sector) to execute a Fourier transform technique to determine the power or amplitude of the base frequency (typically the disk rotational rate) component of dynamic RRO and/or of various harmonics (typically second through nth harmonics). The determination of the power frequency distribution for the dynamic runout is then used to calculate corrections such as ARC feed-forward (“ARCFF”) values which (appropriately converted and conditioned) are combined with a position error signal (PES) or other tracking signal in such a way as to drive the head toward to a zero tracking error position.
In at least some configurations, calculation of the Fourier transform and/or the feed-forward signal is performed by circuitry such as a programmed microprocessor, (although other processing equipment such as an application specific integrated circuit (“ASIC”) or gate arrays may be involved). This circuitry typically is also used for other purposes during operation of the disk drive. Accordingly, the computational load which is devoted to RRO correction must be kept low enough that sufficient computational resources remain available for other functions.
Unfortunately, the trends in recent disk drives, especially trends towards higher data density and towards lower unit costs, generally, have increased the computational load (e.g. increased time, code space, memory space and/or servo ISR time requirements) associated with RRO correction. For example, higher spatial density of data on the surface of the disk involves smaller track-to-track distances, thus, typically requiring greater tracking accuracy, including more accurate RRO correction. Mechanical system simplification can result in degraded RRO containment.
Often, providing the desired RRO correction accuracy includes calculating for higher harmonics which, using previous methods, could increase computational load to an undesirable level. Furthermore, increased data density may involve a larger number of servo sectors per track, thus, (for a constant rotation rate) reducing the amount of time between successive servo sectors. Accordingly, even when the amount of RRO correction calculations for each sector remains constant, as the sector period becomes smaller, the percentage of each sector transit time devoted to RRO correction increases.
Accordingly, it would be useful to provide apparatuses and methods which can reduce the computational load associated with real-time RRO correction (correction which is calculated and applied during normal read/write operations), preferably, without reducing accuracy of the corrections to an unacceptable degree.